package com.yumi.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yumi.entity.TrainingPlan;

/**
 * 培训计划服务接口
 */
public interface TrainingPlanService {

    /**
     * 创建培训计划
     * @param trainingPlan 培训计划信息
     * @return 创建的培训计划
     */
    TrainingPlan createTrainingPlan(TrainingPlan trainingPlan);

    /**
     * 分页查询培训计划
     * @param page 页码
     * @param pageSize 每页大小
     * @param title 标题关键字
     * @param type 培训类型
     * @param status 培训状态
     * @return 分页结果
     */
    Page<TrainingPlan> pageQuery(int page, int pageSize, String title, Integer type, Integer status);

    /**
     * 根据ID查询培训计划详情
     * @param id 培训计划ID
     * @return 培训计划详情
     */
    TrainingPlan getTrainingPlanById(Long id);

    /**
     * 修改培训计划
     * @param id 培训计划ID
     * @param trainingPlan 培训计划信息
     * @return 修改后的培训计划
     */
    TrainingPlan updateTrainingPlan(Long id, TrainingPlan trainingPlan);

    /**
     * 删除培训计划
     * @param id 培训计划ID
     */
    void deleteTrainingPlan(Long id);

    /**
     * 更新培训计划状态
     * @param id 培训计划ID
     * @param status 培训状态
     * @return 更新后的培训计划
     */
    TrainingPlan updateTrainingPlanStatus(Long id, Integer status);
} 